
{***********************************************************}
{                                                           }
{      Luxena dbExpress eXtension Components                }
{                                                           }
{      TDBXSQLProcessor component                           }
{                                                           }
{      Copyright (c) 2001-2006 Luxena Software Company      }
{      http://www.luxena.com                                }
{      e-mail: support@luxena.com                           }
{                                                           }
{***********************************************************}

unit DBXSQLProcessor;

interface

uses LXSQLProcessor;


type

{ TDBXSQLProcessor }

  TDBXSQLProcessor = class(TLXSQLProcessor)
  private
    function GetVersion: string;
    procedure SetVersion(const Value: string);
  public
    class function DefaultProcessor: TDBXSQLProcessor;
    procedure AfterConstruction; override;
    procedure BeforeDestruction; override;
  published
    property OracleLob;
    property Version: string read GetVersion write SetVersion stored False;
  end;


implementation

uses SysUtils, DBXConsts, DBXEvents;


{ TDBXSQLProcessor }

var
  globalDefaultSQLProcessor: TDBXSQLProcessor;

class function TDBXSQLProcessor.DefaultProcessor: TDBXSQLProcessor;
begin
  Result := globalDefaultSQLProcessor;
end;

procedure TDBXSQLProcessor.AfterConstruction;
begin
  inherited;
  TDBXEvents.HandleObjectCreate(Self);
end;

procedure TDBXSQLProcessor.BeforeDestruction;
begin
  TDBXEvents.HandleObjectDestroy(Self);
  inherited;
end;

function TDBXSQLProcessor.GetVersion: string;
begin
  Result := DBXVersion;
end;

procedure TDBXSQLProcessor.SetVersion(const Value: string);
begin
end;


initialization
  globalDefaultSQLProcessor := TDBXSQLProcessor.Create(nil);

finalization
  FreeAndNil(globalDefaultSQLProcessor);

end.